#ifndef RF_GENERALIZER_HEADER
#define RF_GENERALIZER_HEADER


#include "types.h"

class MREAgent; 

class RFGeneralizer
{
public:
	RFGeneralizer(MREAgent* p); 
	virtual ~RFGeneralizer(void);

	virtual void learnRewards()=0; 

	virtual double predict(Observation start, Action a, Observation end)=0; 
	virtual void addData(Transition* t)=0; 
	virtual bool isTerminal(Observation o)=0; 

	MREAgent* m_parent; 
};

#endif
